As is known, provenance refers to the history or lineage of a particular item or object. Thus, in a computing system, provenance may be generated that indicates from what sources a particular data item or object was derived. For example, provenance may be obtained that specifies which particular application program generated which particular data item, as well as what other data items were used to derive the particular data item.
It is also known that user application programs can be complex, and can execute over a relatively long time period, e.g., several weeks or months. In such a scenario, it is understood that provenance may be obtained specifying the lineage associated with particular data sets and particular application programs.
However, assume that some time early or midway through the overall execution time period, an error occurred in the user application. Provenance could provide some insight as to the user application and data sets that were involved at the time of the error. Now suppose the error was caused, not by the user application or data set, but rather by a computing resource in the computing environment that executed the user application. Existing provenance generation techniques would be unable to provide an indication as to what computing resource caused the problem. Further, even if one could somehow pinpoint a computing resource, one would still be unable to readily troubleshoot what went wrong with the particular computing resource.